package secondStage.part2.Arrays;

/**
 * @ClassName: [maoPaoPaiXu]
 * @Description: 冒泡排序
 * @Author: [黄劲松]
 * @CreateDate: [2021-03-28]
 * @Version: [v1.0]
 */
/*如果有n个数据进行排序，
总共需要比较n-1次每一次比较完毕。
下一次的比较就会少—个数据参与*/
public class maoPaoPaiXu {
    public static void main(String[] args) {
        int[] array = {13, 23, 35, 14, 2, 53};
        System.out.println("冒泡排序前:" + arrayToString(array));
        // 冒泡排序
        for (int j = 0; j < array.length - 1; j++) {
            for (int i = 0; i < array.length - 1 - j; i++) {
                if (array[i] > array[i + 1]) {
                    int temp = array[i];
                    array[i] = array[i + 1];
                    array[i + 1] = temp;
                }
            }
        }
        System.out.println("冒泡排序后：" + arrayToString(array));
    }

    //把数组中的元素按照指定的规则组成一个字符串
    public static String arrayToString(int[] array) {
        StringBuilder sb = new StringBuilder();
        sb.append("[");
        for (int i = 0; i < array.length; i++) {
            if (i == array.length - 1) {
                sb.append(array[i]);
            } else {
                sb.append(array[i]).append(",");
            }
        }
        sb.append("]");
        String s = sb.toString();
        return s;
    }

}
